| Предыдущая | Следущая | |
Flash Player 5.
myObject.toString(): String
Нет .
Строка.
Метод; преобразует указанный объект в строку и возвращает ее.
Возврат значения методом toString() на примере исходного объекта:
var myObject:Object = new Object(); trace(myObject.toString()); // output: [object Object]
Этот метод может быть переопредлен, чтобы возвращать более вразумительное значение. Следующие примеры показывают, что метод переопределен для встроенных классов Date, Array, и Number:
// Date.toString() возвращает текущую дату и время
var myDate:Date = new Date();
trace(myDate.toString()); // output: [текущая дата и время]
// Array.toString() возвращает содержимое массива как разделенную запятыми строку
var myArray:Array = new Array("one", "two");
trace(myArray.toString()); // output: one,two
// Number.toString() возвращает числовое значение в виде строки
// Поскольку trace() ничего не сообщает о том, является ли значение строкой или числом
// будем использрвать также typeof() для проверки как работает toString() works.
var myNumber:Number = 5;
trace(typeof (myNumber)); // output: number
trace(myNumber.toString()); // output: 5
trace(typeof (myNumber.toString())); // output: string
Следующий пример показывает как переопределить toString() для
произвольного класса. Сначала создаем текстовый файл Vehicle.as ,
который содержит только определение класса Vehicle и поместим его в папку Classes
в папке Configuration .
// содержимое Vehicle.as
class Vehicle {
var numDoors:Number;
var color:String;
function Vehicle(param_numDoors:Number, param_color:String) {
this.numDoors = param_numDoors;
this.color = param_color;
}
function toString():String {
var doors:String = "door";
if (this.numDoors > 1) {
doors += "s";
}
return ("A vehicle that is " + this.color + " and has " + this.numDoors + " " + doors);
}
}
// код для размещения в FLA файле
var myVehicle:Vehicle = new Vehicle(2, "red");
trace(myVehicle.toString());
// output: A vehicle that is red and has 2 doors
//в целях сравнения , вызывается valueOf()
// для myVehicle не существует исходного значения , поэтому возвращается объект
// давая такой же output как и toString().
trace(myVehicle.valueOf());
// output: A vehicle that is red and has 2 doors
| Посмотреть комментарии LiveDocs | Предыдущая | Следущая | |